Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release Workbench for Google Cloud Workstations and other fixes #625

Merged
merged 21 commits into from
Aug 18, 2023
Merged

Conversation

ianpittwood
Copy link
Collaborator

@ianpittwood ianpittwood commented Aug 15, 2023

Includes

ianpittwood and others added 20 commits August 7, 2023 07:59
Add openssh-client packages into base image to ensure SSH in all downstream images
* Add `ca-certificates` and explicit `gpg` install

* Remove GPG after PPM install
* Revert "Fix GPG call in Ubuntu 18.04 base"

This reverts commit 6001812.

* Remove Ubuntu 18.04 base image

- Removes product/base/Dockerfile.ubuntu1804 and product/pro/Dockerfile.ubuntu1804 as neither are in use.
- Change defaults and example commands across all project Justfiles to ubuntu2204.
- Remove Dockerfile.*.draft from package-manager, would have to be rewritten if we decide to switch PPM to the repo product base image.
- Remove 18.04 builds from workflows.
- Add NEWS.md entry.

* Update product/pro/Justfile

Co-authored-by: Benjamin R. J. Schwedler <[email protected]>

---------

Co-authored-by: Benjamin R. J. Schwedler <[email protected]>
* Revert "Fix GPG call in Ubuntu 18.04 base"

This reverts commit 6001812.

* Run apt upgrade on PPM image

* Revert "Revert "Fix GPG call in Ubuntu 18.04 base""

This reverts commit 40e1b6d.

* Update PPM tini to 0.19.0

* Install gpg earlier in Dockerfile.ubuntu1804

* Install gpg earlier in Dockerfile.ubuntu2204

* Add `dirmngr` and `gpg-agent` to dependency installs

* Update trust DB before acquiring keys

Install ALL recommended packages for dependencies in 18.04

* Curl all our keys because `gpg` on bionic is now unreliable

* Comment the issue
Closes #613

The current `just` automation to update python versions does not
currently apply to `PYTHON_VERSION_JUPYTER`.

This is a one-off fix until we address this fully in #590
* Fork the Workbench image for Google Cloud Workstations

* Add changes pulled from Cole's alpha image

* Changes necessary for working image

* Add VS Code "cloudcode" plugin

* Upgrade to Workbench 2023.03.0

* Build workflow and Jupyter improvements

* Pipeline syntax fix

* Fix build-args syntax

* One-line tags

* Use dumb docker list format

* Add just setup

* Trim double quotes

* Fix + in tag version

* Adapt Dockerfile to Ubuntu 20.04 base

* Fix env var references

* Fix odbc install OS

* Fix download URL

* Disable build tests for now until I get Goss working again

* Quiet flag on gcloud auth

* Merge push action into build step

* Add configure script step for jupyter notebook

* Add jupyter notebook config to fix jupyter terminal bug

* Add a variety of basic data science packages into the image

* Add lab-args

* Fix allow_origin arg

* Revert jupyter.conf changes

* Add Quarto and temporarily add args to Jupyter Lab for debugging

* Fix goss tests

* Add PYTHON_VERSION_JUPYTER in workflow

* Fixes to build from daily with JupyterLab fix

* Replace tagged version variable

* Update r_packages.txt with R Package Dependencies list

* Update test and push blocks in workflow

* Fix test path

* Specify tag for test

* Use just for build pipeline

* Add tags to build step

* Quote tags

* Last fix for pushing tags

* Use just command for pushing

* Fixes after push failure

* Implement cache inflation bug workaround

* Push all tags

* Run docker image ls to see why images aren't found

* Package and dependency updates

* Just retag the image and forget about this problem for now

* Update registry name to release registry

* Temporarily continue on error for tests

* Improve Goss tests based on #490

Add missing R package system library dependencies

Change CRAN repos to use posit.co address

Upgrade Goss to 0.3.22

* Update VSCode Extensions

* Disable pipeline caching

* Disable pipeline caching

* Update RSW_VERSION var

* Update launcher-env PATH

* Upgrade R and Python versions

Add patch to rserver.conf to fix libR.so not found bug

* License manager implementation for WGCW

* Update env var

* Comment out exec logging

* Maximize build space for GCW GHA

* Change buildx caching to a mounted directory with actual space

* Dynamically set buildx caching path from var

* Upgrade Workbench for GCW

* Use build-push-action in GHA

Revert version upgrade

Update patch versions for Python

Upgrade Pro Drivers

* Remove maximize build space, may not be necessary

* Rollback python version upgrade, not yet released

* Fix missed version

* Upgrade Workbench to 2023.06.0 and tick donwload url to focal

* Explicitly define download url in build workflow

Add .env file

* Upgrade workflow to 2023.06.0

* Increase timeout for R lib goss tests

Use RSW version for test tag

* Remove "load" from push action

* Rollback to 2023.03.2

* Remove unnecessary launcher keys

* Update workbench-for-google-cloud-workstations/Justfile

Co-authored-by: Benjamin R. J. Schwedler <[email protected]>

* Use .env file for Justfile and GHA workflow

* Fix test step in workflow

* Revise README.md from original copy to GCW specific copy

* Clean up caching

- Purge pip caches after install steps
- Purge apt caches where missing
- Consolidate COPY steps

* Remove `-x` flag from `just run` target

* Update versions for bug fixes

* Rebase and merge WGCW workflow into release workflow

* Fix missing shell

* Fix bash logic

* Do not trace licensing in startup.sh

* Update patch in launcher-env

* Move apt package list to deps/apt_packages.txt

---------

Co-authored-by: Benjamin R. J. Schwedler <[email protected]>
Update PYTHON_VERSION_JUPYTER to match PYTHON_VERSION_ALT
Also add a server test to ensure that the file does not get left
over in builds.

Close #550

Co-authored-by: Ian Pittwood <[email protected]>
…619)

* Expand default lang package lists

* Move dependency scripts and lists back into `/tmp`

remove `local UBUNTU_CODENAME`
* Push release pipeline on cron trigger

* Add note to update all references when updating cron
@ianpittwood ianpittwood requested review from shepherdjerred and tylfin and removed request for a team August 15, 2023 20:34
@ianpittwood ianpittwood changed the title Release Workbench for Google Cloud Workstations Release Workbench for Google Cloud Workstations and other fixes Aug 15, 2023
@shepherdjerred shepherdjerred removed their request for review August 17, 2023 17:05
@ianpittwood ianpittwood requested a review from msarahan August 17, 2023 18:03
@ianpittwood ianpittwood self-assigned this Aug 17, 2023
@ianpittwood ianpittwood merged commit cd1a0c5 into main Aug 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants